#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <string.h>

#define PIPE_NAME "/tmp/my_tset_pipe"

int main()
{
    int fd;
    char buffer[1024];

    // 创建命名管道
    mkfifo(PIPE_NAME, 0666);

    // 打开命名管道
    fd = open(PIPE_NAME, O_RDWR);

    // 写入数据到命名管道
    write(fd, "Hello, named pipe!", strlen("Hello, named pipe!"));

    // 从命名管道读取数据
    read(fd, buffer, sizeof(buffer));
    printf("Received message: %s\n", buffer);

    // 关闭命名管道
    close(fd);

    // 删除命名管道
    unlink(PIPE_NAME);

    return 0;
}